It is known from prior art to use centrally organized systems to offer one or more services to other devices. In particular, a server may provide at least one service for one or more other devices, so called clients. Such an architecture is called a client-server model. One or more server(s) can provide one or more functionality(ies) and service(s), respectively, such as sharing data or resources among multiple clients, or performing computation for a client.
A typical prior art system is shown in FIG. 1. The depicted system 100 comprises a first entity 101 in form of a client device 101, a further entity 103 in form of a further client device 103 and a central system 106 in form of a central server 106. For instance, the first entity 101 and/or the second entity 103 may be a desktop computer, mobile computer, mobile phone, etc.
In order to communicate with each other, a standard communication network 108 comprising wireless and/or wire lines, such as a LAN (Local Area Network) or the internet, is provided. Each of the devices 101, 103, 106 comprises at least one communication module 110, 112, 114 configured to establish a communication connection with the standard communication network 108. Hence, the devices 101, 103, 106 can communicate with each other.
The server 106 comprises a service application 116 configured to provide at least one service for the client devices 101, 103. The offered service may be the conduction of an action, such as a financial transaction, an evaluation of a data set, etc. In order to initiate or trigger such an action, the first client device 101 and/or the further client device 103 communicate with the server 106. Thereby, confidential data can be exchanged between the server 106 and one or more of the client devices 101, 103. This data can be processed by the server 106 and the result can be transmitted to one or more of the client devices 101, 103.
Common to such prior art systems are that a central subsystem, a central process and/or a central organization or instance is provided in order to manage and, in particular, conduct a service action.
Technically speaking, as previously described, a corresponding system for conducting a service is realized according to prior art by a client-server structure. The central organization or instance is created by one or a plurality of central servers. A server of this kind or a platform can be distributed and located on different computing devices, for example. This means that a virtual server can be realized by a cloud. For example, a centrally arranged database can be provided.
In particular, as described herein before, a central instance/server is configured to perform at least one action as a service for an entity. Thereby, the central server is used as a confidential instance for conducting the action. The central instance, such as a server or a platform, defines the rules, such as one or more evaluation rule(s). The central server ensures that the actions or processes are carried out correctly for all entities involved. In other words, a central instance prevents tampering by one of the participating entities and/or by third parties.
The disadvantage of server-client structures of this kind, particularly the server (or platform), apart from the high transaction costs, is that the central instance or central server manages confidential data of the users of the at least one entity. A persistent problem affecting the central instance is that of protecting the confidential data stored on one server or a plurality of servers from access by unauthorized third parties. In particular, a high degree of security expenditure is required in order to prevent user data (e.g. registered peer-to-peer identifications), billing data, location data of the user, etc. from being tampered. This in turn leads to higher transaction costs.
In order to avoid the issues related with a central system, such as a server, due to recent developments client server structures are substituted by so called peer-to-peer networks. A peer-to-peer network, also called computer-to-computer network, comprises a plurality of [computer] nodes. In particular, at least one first node and at least one further or second node can be provided. Each of these nodes comprises at least a part of a peer-to-peer application. In the peer-to-peer application data can be stored and/or processed. Thereby, data written into the peer-to-peer application is stored by a plurality of nodes. For example, it may be provided that after a positive verification of written information in the peer-to-peer application this information is saved by all nodes, at least by a part of the nodes.
For storing new information in a tamper-proof way, a link can be established between the new information and at least one previously stored information. Such a storing process requires a good time synchronization and clock synchronization, respectively, between the plurality of nodes. Each prior art node comprises therefore a clock module wherein each of these modules receives a clock synchronization signal from a central clock server. However, a general issue of such a peer-to-peer network is that a clock offset between the clock signals of different nodes of the peer-to-peer network may occur due to the use of the central clock server and e.g. physical delays or latencies in the communication network used. Such a clock offset may cause that the data stored in the peer-to-peer application may differ between different nodes. This in turn leads to the problem that the data is not stored in a time consistent way and/or tamper-proof way. This can, for example, be an issue when low latency or high frequency transactions are required that need to be executed in the order of the time when the transaction was initiated.
A further issue of prior art peer-to-peer network is that after an operation error of a node, such as an interruption of the power supply of the node, the data stored in the peer-to-peer application and on the node with the error may differ from the data stored in the peer-to-peer application and on the further nodes of the peer-to-peer network. Thereby, it is a general concern to restore the full functionality of the node as soon as possible. In particular, a fast data synchronisation of the data stored in the peer-to-peer application and on the node with the error and the data stored in the peer-to-peer application and on the further nodes of the peer-to-peer network is required.
Therefore, it is an object of the present invention to provide a peer-to-peer network having at least two nodes, which enables a tamper-proof storing of data in a peer-to-peer application and, in particular, which allows the restoration of a full functionality of the node after occurrence of operation error within a short period of time.